// samsting : this file is auto create.

#include "Ess/2014-08-28/DescribeScalingGroupsResponse.h"

namespace aliyun { namespace Ess {

DescribeScalingGroupsResponse::DescribeScalingGroupsResponse() {
}

const std::vector<RemovalPolicy>& DescribeScalingGroupsResponse::ScalingGroup::GetRemovalPolicies(void) const {
  return RemovalPolicies_;
}

const std::vector<DBInstanceId>& DescribeScalingGroupsResponse::ScalingGroup::GetDBInstanceIds(void) const {
  return DBInstanceIds_;
}

int DescribeScalingGroupsResponse::ScalingGroup::GetDefaultCooldown(void) const {
  return DefaultCooldown_;
}

int DescribeScalingGroupsResponse::ScalingGroup::GetMaxSize(void) const {
  return MaxSize_;
}

int DescribeScalingGroupsResponse::ScalingGroup::GetPendingCapacity(void) const {
  return PendingCapacity_;
}

const string& DescribeScalingGroupsResponse::ScalingGroup::GetLoadBalancerId(void) const {
  return LoadBalancerId_;
}

int DescribeScalingGroupsResponse::ScalingGroup::GetRemovingCapacity(void) const {
  return RemovingCapacity_;
}

const string& DescribeScalingGroupsResponse::ScalingGroup::GetScalingGroupName(void) const {
  return ScalingGroupName_;
}

int DescribeScalingGroupsResponse::ScalingGroup::GetActiveCapacity(void) const {
  return ActiveCapacity_;
}

const string& DescribeScalingGroupsResponse::ScalingGroup::GetActiveScalingConfigurationId(void) const {
  return ActiveScalingConfigurationId_;
}

const string& DescribeScalingGroupsResponse::ScalingGroup::GetScalingGroupId(void) const {
  return ScalingGroupId_;
}

const string& DescribeScalingGroupsResponse::ScalingGroup::GetRegionId(void) const {
  return RegionId_;
}

int DescribeScalingGroupsResponse::ScalingGroup::GetTotalCapacity(void) const {
  return TotalCapacity_;
}

int DescribeScalingGroupsResponse::ScalingGroup::GetMinSize(void) const {
  return MinSize_;
}

const string& DescribeScalingGroupsResponse::ScalingGroup::GetLifecycleState(void) const {
  return LifecycleState_;
}

const string& DescribeScalingGroupsResponse::ScalingGroup::GetCreationTime(void) const {
  return CreationTime_;
}

const std::vector<DescribeScalingGroupsResponse::ScalingGroup>& DescribeScalingGroupsResponse::GetScalingGroups(void) const {
  return ScalingGroups_;
}

int DescribeScalingGroupsResponse::GetTotalCount(void) const {
  return TotalCount_;
}

int DescribeScalingGroupsResponse::GetPageNumber(void) const {
  return PageNumber_;
}

int DescribeScalingGroupsResponse::GetPageSize(void) const {
  return PageSize_;
}

const char* DescribeScalingGroupsResponse::BaseKey(void) {
  return "DescribeScalingGroupsResponse";
}

void DescribeScalingGroupsResponse::UnmarshallerMap(std::map<string, string>& response_map) {
  int ScalingGroups__length = 0;
  UnmarshallerInt(ScalingGroups__length, response_map, "DescribeScalingGroupsResponse.ScalingGroups.Length");
  if(ScalingGroups__length >= 0) {
    ScalingGroups_.resize(ScalingGroups__length);
    for(int i1 = 0; i1 < ScalingGroups__length; i1++) {
      int ScalingGroups_i1_RemovalPolicies__length = 0;
      UnmarshallerInt(ScalingGroups_i1_RemovalPolicies__length, response_map, "DescribeScalingGroupsResponse.ScalingGroups[+"+string_ValueOfInt(i1)+"].RemovalPolicies.Length");
      if(ScalingGroups_i1_RemovalPolicies__length >= 0) {
        ScalingGroups_[i1].RemovalPolicies_.resize(ScalingGroups_i1_RemovalPolicies__length);
        for(int i2 = 0; i2 < ScalingGroups_i1_RemovalPolicies__length; i2++) {
          UnmarshallerString(ScalingGroups_[i1].RemovalPolicies_[i2], response_map, "DescribeScalingGroupsResponse.ScalingGroups[+"+string_ValueOfInt(i1)+"].RemovalPolicies["+string_ValueOfInt(i2)+"]");
        } // for(int i2 = 0; i2 < ScalingGroups_i1_RemovalPolicies__length; i2++) {
      } // if(ScalingGroups_i1_RemovalPolicies__length >= 0) {

      int ScalingGroups_i1_DBInstanceIds__length = 0;
      UnmarshallerInt(ScalingGroups_i1_DBInstanceIds__length, response_map, "DescribeScalingGroupsResponse.ScalingGroups[+"+string_ValueOfInt(i1)+"].DBInstanceIds.Length");
      if(ScalingGroups_i1_DBInstanceIds__length >= 0) {
        ScalingGroups_[i1].DBInstanceIds_.resize(ScalingGroups_i1_DBInstanceIds__length);
        for(int i2 = 0; i2 < ScalingGroups_i1_DBInstanceIds__length; i2++) {
          UnmarshallerString(ScalingGroups_[i1].DBInstanceIds_[i2], response_map, "DescribeScalingGroupsResponse.ScalingGroups[+"+string_ValueOfInt(i1)+"].DBInstanceIds["+string_ValueOfInt(i2)+"]");
        } // for(int i2 = 0; i2 < ScalingGroups_i1_DBInstanceIds__length; i2++) {
      } // if(ScalingGroups_i1_DBInstanceIds__length >= 0) {

      UnmarshallerInt(ScalingGroups_[i1].DefaultCooldown_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].DefaultCooldown");
      UnmarshallerInt(ScalingGroups_[i1].MaxSize_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].MaxSize");
      UnmarshallerInt(ScalingGroups_[i1].PendingCapacity_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].PendingCapacity");
      UnmarshallerString(ScalingGroups_[i1].LoadBalancerId_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].LoadBalancerId");
      UnmarshallerInt(ScalingGroups_[i1].RemovingCapacity_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].RemovingCapacity");
      UnmarshallerString(ScalingGroups_[i1].ScalingGroupName_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].ScalingGroupName");
      UnmarshallerInt(ScalingGroups_[i1].ActiveCapacity_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].ActiveCapacity");
      UnmarshallerString(ScalingGroups_[i1].ActiveScalingConfigurationId_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].ActiveScalingConfigurationId");
      UnmarshallerString(ScalingGroups_[i1].ScalingGroupId_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].ScalingGroupId");
      UnmarshallerString(ScalingGroups_[i1].RegionId_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].RegionId");
      UnmarshallerInt(ScalingGroups_[i1].TotalCapacity_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].TotalCapacity");
      UnmarshallerInt(ScalingGroups_[i1].MinSize_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].MinSize");
      UnmarshallerString(ScalingGroups_[i1].LifecycleState_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].LifecycleState");
      UnmarshallerString(ScalingGroups_[i1].CreationTime_, response_map, "DescribeScalingGroupsResponse.ScalingGroups["+string_ValueOfInt(i1)+"].CreationTime");
    } // for(int i1 = 0; i1 < ScalingGroups__length; i1++) {
  } // if(ScalingGroups__length >= 0) {

  UnmarshallerInt(TotalCount_, response_map, "DescribeScalingGroupsResponse.TotalCount");
  UnmarshallerInt(PageNumber_, response_map, "DescribeScalingGroupsResponse.PageNumber");
  UnmarshallerInt(PageSize_, response_map, "DescribeScalingGroupsResponse.PageSize");
}


} } // namespace aliyun { namespace Ess {

// end of file 
